package com.sangsang.ck.basemapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Param;

import java.util.Collection;
import java.util.List;

/**
 * @author liutangqi
 * @date 2023/12/20 21:44
 */
public interface CustomMapper<T> extends BaseMapper<T> {
    /**
     * 批量插入
     *
     * @author liutangqi
     * @date 2023/12/20 21:45
     * @Param [entities]
     **/
    int batchInsert(List<T> entities);

    /**
     * 批量查询当前主键在数据库中已经存在的数据
     *
     * @return 数据库存在的数据的主键
     * @author liutangqi
     * @date 2023/12/25 16:30
     * @Param [idList]
     **/
    List selectExistIdByIds(@Param("coll") Collection idList);


    /**
     * ck的通过id批量删除
     *
     * @author liutangqi
     * @date 2023/12/26 10:06
     * @Param [idList]
     **/
    int ckBatchDeleteByIds(@Param("coll") Collection idList);

    /**
     * ck 查看当前表未完成的mutation的数量
     *
     * @author liutangqi
     * @date 2023/12/26 10:50
     * @Param [tableName]
     **/
    Integer ckQueryMutationsCount();
}
